[MDM-BACKEND-010] Создать метод POST /api/products/card

Разработка высокопроизводительного эндпоинта выгрузки ИИ-паспорта продукта

Author

MDM Domain Lead

Published

July 13, 2026

NoteКраткая карточка задачи

  • Инструкция по шагам:
    1. На Шагах 1-2: Реализовать прием запроса от мобильного приложения при тапе пользователя на карточку продукта. Обеспечить сквозной проброс заголовка X-Request-ID (trace_id).
    2. Разработать Pydantic-валидацию Query-параметров. Обязательное поле: product_name типа string. Реализовать приведение строки к нижнему регистру (lowercase) и очистку от лишних пробелов на уровне валидатора для точного сопоставления.
    3. На Шаге 3: Направить параметризованный SQL-запрос напрямую в PostgreSQL Fridge DB (в соответствии с манифестом, сущность food_elements изолирована внутри контура INVENTORY).
    4. Выполнить чтение: SELECT chemical_card FROM fridge_db.food_elements WHERE LOWER(name) = LOWER(:product_name) AND status = 'READY' LIMIT 1.
    5. На Шагах 4-5: При успешном нахождении записи, выдать статус 200 OK и вернуть кэшированную ИИ-структуру (БЖУ, макроэлементы, OCR-синонимы) в плоском JSON-формате на шлюз Nginx.
    6. Если запись не найдена или её статус PENDING, вернуть структурированный системный код ошибки (в соответствии с контуром error-directory), например ERR_MASTER_DATA_CARD_NOT_READY со статусом 404 Not Found.